home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS Toolkit
/
BBS Toolkit.iso
/
rbbs_pc
/
rbbsdocs.zip
/
RBBSDOCS.APK
< prev
next >
Wrap
Text File
|
1990-11-05
|
6KB
|
110 lines
APPENDIX K -- RBBS-PC in a MultiLink Environment K-1
APPENDIX K -- RBBS-PC in a MultiLink Environment
------------------------------------------------
RBBS-PC only runs under Multilink versions 4.0, 3.02 and earlier.
CONFIG's allows the SysOp to tell RBBS-PC that it will be running in a
MultiLink environment. This is ESSENTIAL when running RBBS-PC under
MultiLink. CONFIG allows the SysOp to specify what MultiLink terminal type
code to pass to MultiLink whenever RBBS-PC exits to DOS via a "Door". The
MultiLink documentation specifies the various terminal type codes. When a
SysOp indicates that "doors" are available (via parameter 101 of CONFIG)
and RBBS-PC is to be run under MultiLink, the SysOp is asked to select the
MultiLink terminal type that RBBS-PC is to inform MultiLink to expect when
MultiLink is given control of the "Door."
RBBS-PC has been tested running two copies of RBBS-PC under DOS 3.2 and
MultiLink Advanced (versions 3.02 and 4.0) on an IBM PC which had a mother-
board containing 256K and an AST Comboplus board with 384K (a total of
640K). However, to do this RBBS-PC must be re-compiled (see Appendix U).
The "autoexec" file was named AUTOEXEC.BAT and contained the following
parameters
MLINK /9,266/9,266
NOTE! ==>RBBS-PC must be recompiled with C:512 in order to run in a 268K
partition under MultiLink. As released, RBBS-PC is compiled with the
parameter C:4096 which requires a MultiLink partition of 270K. Of course,
to SHELL to the external protocols, the partitions must be about 440K.
It is important to avoid doing several things when running RBBS-PC under
MultiLink. First, NEVER RUN MLSLICE! This is because MLSLICE hangs off
the PC's timer chain and the code generated by the BASIC compilers violates
all sorts of DOS conventions whenever it is utilizing the PC's speaker
(i.e. as when RBBS-PC pages the SysOp). In so doing, the code generated by
the BASIC compilers is incompatible with programs that do follow DOS
conventions.
Second, NEVER use the DOS "PRINT" command! This is because there is a bug
in the code generated by the BASIC compiler that causes the system to hang
if a compiled BASIC program is running and DOS is printing something. This
bug has been corrected in the BASIC compiler that was used to generate
RBBS-PC.EXE that is distributed. However the version of RBBS-PC that you
get (if other than from CPCUG) may not have this bug corrected. This is a
bug that occurs independent of running MultiLink.
Third, check your Intel 8088 chip's copyright date by opening up the cover
and locating the 8088 chip. If the copyright date printed on the chip is
1978 (i.e. pre 1981), REPLACE THE INTEL 8088 CHIP!!!!! The 1978 Intel 8088
chip had several design flaws that will cause your system to lock up
occasionally. One of these design flaws allowed interrupts to occur while
stack switching (something that will happen running multiple partitions
doing disk I/O under any multi-tasking DOS add-on such as MultiLink or even
IBM's TopView). Don't blame MultiLink for the flawed Intel 8088 chip that
IBM put in your PC! It costs about $70 ($35 for the chip and $35 for
labor) and takes about 15 minutes to have the 1978 Intel 8088 chip
replaced. In fact, if you are going to replace your 1978 Intel 8088 chip,
you might consider the newer (and 5% to 10% faster) NEC V20 chip.
Fourth, DON'T USE "BUFFERS=" in the CONFIG.SYS for DOS! This may be an
"old wives tale," but I am convinced (but can't prove) that there are
RBBS-PC 17.3A TECHNICAL REFERENCE MANUAL K-2
incompatibilities between the code the BASIC compiler generates, DOS's use
of "BUFFERS=", and MultiLink.
fifth, RBBS-PC will only run in Background 1 or Background 2.
Finally, DON'T RUN PROGRAMS THAT USE THE BASIC "RUN-TIME" LIBRARY, and
always invoke the BASIC interpreter with the command BASIC /C:0! Both the
BASIC interpreter's handling of communications ports and BASRUN.EXE seem to
violate enough DOS conventions to "lock up" MultiLink.
When RBBS-PC is told that it is running in a MultiLink environment via
CONFIG parameter 162, RBBS-PC will automatically do the following:
1) When re-cycling, it will automatically enqueue on the correct
MultiLink resource ID for the communications port defined in CONFIG
for that copy of RBBS-PC to use.
2) When re-cycling, it will automatically tell MultiLink that this is a
type "9" partition (i.e. MultiLink is NOT to handle the communications
port).
3) When exiting to DOS via a "door", RBBS-PC will automatically
tell MultiLink to start handling the communications for this
partition (COM1 or COM2) and what type of terminal was defined
in CONFIG that would be on the communications port (MultiLink
terminal types 1 through 12).
Manually, it is possible to bring up and run one copy of RBBS-PC under
MultiLink. The only way that I have been able to bring up two copies of
RBBS-PC successfully (one copy running in each of two partitions) was to
bring them up via AUTOEXE1.BAT and AUTOEXE2.BAT files. It appears that
during the MultiLink initialization sequence when the partitions are being
established and the "AUTOEXEx.BAT" files are being invoked that MultiLink
doesn't get "confused" and lock up with a second copy of RBBS-PC present.
If using Multi-Link to run multiple nodes in the same machine under
DOS 3.x or above, it is recommended that the SysOp execute SHARE.COM prior
to starting multiple RBBS-PC nodes under Multi-Link and specify FILES=20 in
the CONFIG.SYS file.